/**
 * @author Renato
 */

$(document).ready(function() {  
    $('#cep').mask('99.999-999');
    $('#telefone').mask('(99) 9999-9999');
    $('#nome').focus();
    
    $('#submit').click(function(e){
      e.preventDefault();
      var address = $('#logradouro').val()+', '+$('#numero').val()+' - '+$('#cidade').val()+' - '+$('#bairro').val()+' '+$('#ufe_sg').val()+' - Brasil';
      getLatLong(address);
    });
});

function saveEndereco(results, status){
  
  if(status == google.maps.GeocoderStatus.OK) {
    $('#latitude').val(results[0].geometry.location.lat());
    $('#longitude').val(results[0].geometry.location.lng());
    var dados = $.serializeForm('#formEndereco');
    Rk.Modal('#salvando');
    Rk.service('meu', 'saveEndereco', dados, function(data) {
      if(data.id) {
        window.location.href = '/meu/endereco';
      } else {
        Rk.FecharModal();
      }
    });
  } else {
    alert("Geocode was not successful for the following reason: " + status);
  }

}

function getEndereco(){
  dados = {};
  dados.cep = $('#cep').val();
  while(dados.cep.indexOf('_')>-1){
    dados.cep = dados.cep.replace('_', '');
  }
  dados.cep = dados.cep.replace('-', '.');
  if(dados.cep.length < 10) return false;
  
  $('#logradouro').val('');
  $('#bairro').val('');
  $('#ufe_sg').val('');
  $('#cidade').val('');
  $('#bai_nu').val();
  $('#loc_nu').val();
  
  Rk.Modal('#busca-endereco');
  $.ajax({
    type: "POST",
    url: "/cep/getEnderecoPorCep",
    data: dados,
    success: function( data ){
      Rk.FecharModal();
      var dados = jQuery.parseJSON(data);
      $('#logradouro').val(dados.Logradouro);
      $('#bairro').val(dados.Bairro);
      $('#ufe_sg').val(dados.Estado);
      $('#cidade').val(dados.Cidade);
      $('#bai_nu').val(dados.bai_nu);
      $('#loc_nu').val(dados.loc_nu);
      $('#numero').focus();
    }
  });
}

function getLatLong(address) {
  var geocoder = new google.maps.Geocoder();
  geocoder.geocode({
    'address' : address
  }, saveEndereco);  
}